// 引入config中的url,封装一下request请求
const baseUrl = require('./config.js').Config.url;

// 每个请求都携带token

module.exports = {
  /**
   * 二次封装wx.request
   * url:请求的接口地址
   * method:请求方式 GET,POST....
   *  data:要传递的参数
   * header:请求头
   */
  request: (url, method, data) => {
    // console.log('这是我封装的ajax请求', url, method, data, header);
    let _url = `${baseUrl}/${url}`; //这里使用ES6的写法拼接的字符串
    // let _url = `http://1.92.121.232:8080/${url}`;//这里使用ES6的写法拼接的字符串
    console.log('拼接完的' + _url)
    return new Promise((resolve, reject) => {
      // wx.showLoading({
      //     title: '正在加载',
      // });
      wx.request({
        url: _url,
        method: method,
        data: data,
        header: {
          'Accept': 'application/json',
          'content-type': 'application/json',
          'token': wx.getStorageSync('token')
        },
        success: (res) => {
          // console.log('从接口获取到的数据', res);
          let data = res.data;
          if (res.statusCode == 200) {
            // wx.hideLoading();
            if (data.code == 200) {
              resolve(res.data);
              // wx.hideLoading();
              // wx.showToast({
              //     title: '请求成功',
              // })
            }
            if (data.code == 201) {
              // wx.hideLoading();
              wx.showToast({
                title: data.message,
                icon: 'none',
                duration: 2000
              })
            }
          } else if (res.statusCode == 401) {
            const _data = {}
            _data.code = 401
            resolve(_data);
            // wx.hideLoading();
            // wx.showToast({
            //   title: '当前登录token无效，请重新登录',
            //   icon: 'none'
            // })
          } else {
            // wx.hideLoading();
            wx.showToast({
              title: '请求有误',
              // title: res.message,
              icon: 'none'
            })
          }
        },
        fail() {
          // wx.hideLoading();
          reject('发送失败');
          wx.reLaunch({
            url: '/pages/login/login', //
          })
          wx.showModal({
            title: '提示',
            content: '网络错误',
            success(res) {
              if (res.confirm) {
                console.log('用户点击确定');
              } else if (res.cancel) {
                console.log('用户点击取消');
              }
            }
          })
        }
      });

    });
  },
}